package com.pearadmin.modules.sys.service;

import com.github.pagehelper.PageInfo;
import com.pearadmin.common.web.domain.request.PageDomain;
import com.pearadmin.common.web.domain.response.Result;
import com.pearadmin.modules.sys.domain.InvAnodeInputInfo;

import java.util.List;

/**
 * 导杆投入信息Service接口
 *
 * @author Mr.Ling
 * @date 2021-12-18
 */
public interface IInvAnodeInputInfoService {
    /**
     * 查询导杆投入信息
     *
     * @param id 导杆投入信息ID
     * @return 导杆投入信息
     */
    InvAnodeInputInfo selectInvAnodeInputInfoById(Long id);


    /**
     * 查询导杆投入信息
     *
     * @param ${classsName} 导杆投入信息
     * @param pageDomain
     * @return 导杆投入信息 分页集合
     */
    PageInfo<InvAnodeInputInfo> selectInvAnodeInputInfoPage(InvAnodeInputInfo invAnodeInputInfo, PageDomain pageDomain);

    /**
     * 查询导杆投入信息列表
     *
     * @param invAnodeInputInfo 导杆投入信息
     * @return 导杆投入信息集合
     */
    List<InvAnodeInputInfo> selectInvAnodeInputInfoList(InvAnodeInputInfo invAnodeInputInfo);

    /**
     * 新增导杆投入信息
     *
     * @param invAnodeInputInfo 导杆投入信息
     * @return 结果
     */
    int insertInvAnodeInputInfo(InvAnodeInputInfo invAnodeInputInfo);

    /**
     * 修改导杆投入信息
     *
     * @param invAnodeInputInfo 导杆投入信息
     * @return 结果
     */
    int updateInvAnodeInputInfo(InvAnodeInputInfo invAnodeInputInfo);

    /**
     * 批量删除导杆投入信息
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    int deleteInvAnodeInputInfoByIds(String[] ids);

    /**
     * 删除导杆投入信息信息
     *
     * @param id 导杆投入信息ID
     * @return 结果
     */
    int deleteInvAnodeInputInfoById(Long id);

    boolean useCheck(String anodeCode);

    InvAnodeInputInfo selectByAnodeCode(String anodeCode);
}
